package com.xiashitech.agent.instrumentation.base.context;

import io.opentelemetry.javaagent.shaded.io.opentelemetry.api.baggage.BaggageEntryMetadata;

public interface XSBaggageBuilder {
    XSBaggageBuilder put(String key, String value, BaggageEntryMetadata baggageEntryMetadata);

    default XSBaggageBuilder put(String key, String value) {
        return this.put(key, value, BaggageEntryMetadata.empty());
    }

    XSBaggageBuilder remove(String key);

    XSBaggage build();
}
